(function(TYPES,typeId){
    function my_a(){
        var that = this;
        this.run=function(shape1,shape2){
            var service = GeometryService.getInstance();
            var alignmentResult = service.findAlignmentGeometry(shape1, shape2, false);
            if (alignmentResult.contained() && alignmentResult.matches()) {
                return false;
            };
            var fShape1 = shape1.getFlippedShape();
            var alignmentResultsObj = service.findAlignmentGeometries(fShape1, shape2, false);
            var alignmentResultsJava = alignmentResultsObj.getResults();
            var alignmentResults = ME.toJs(alignmentResultsJava);
            for each (alignmentResult in alignmentResults) {
                if (alignmentResult.contained() && alignmentResult.matches()) {
                    return true;
                };
            };
            return false;
        }
    }    TYPES.registerType(typeId,my_a);
})(RULES,"TestRuleWasFlipped-1");
